﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SIPSorcery.Entities
{
    public class SecurityQuestions : List<string>
    {
        public SecurityQuestions()
        {
            base.Add("What is your mother's maiden name?");
            base.Add("What is your favourite colour?");
            base.Add("Which city were you born in?");
            base.Add("What was the name of your high school?");
            base.Add("Who is your favourite philosopher?");
        }
    }

    public class CountriesList : List<string>
    {
        public CountriesList()
        {
            base.Add("United States");
            base.Add("Australia");
            base.Add("United Kingdom");
            base.Add("Afghanistan");
            base.Add("Albania");
            base.Add("Algeria");
            base.Add("American Samoa");
            base.Add("Andorra");
            base.Add("Angola");
            base.Add("Anguilla");
            base.Add("Antartica");
            base.Add("Antigua and Barbuda");
            base.Add("Argentina");
            base.Add("Armenia");
            base.Add("Aruba");
            base.Add("Ashmore and Cartier Islands");
            base.Add("Atlantic Ocean");
            base.Add("Australia");
            base.Add("Austria");
            base.Add("Azerbaijan");
            base.Add("Bahamas");
            base.Add("Bahrain");
            base.Add("Baker Island");
            base.Add("Bangladesh");
            base.Add("Barbados");
            base.Add("Bassas da India");
            base.Add("Belarus");
            base.Add("Belgium");
            base.Add("Benin");
            base.Add("Bermuda");
            base.Add("Bhutan");
            base.Add("Bhutan");
            base.Add("Bolivia");
            base.Add("Bosnia and Herzegovina");
            base.Add("Botswana");
            base.Add("Bouvet Island");
            base.Add("Brazil");
            base.Add("British Virgin Islands");
            base.Add("Brunei");
            base.Add("Bulgaria");
            base.Add("Burkina Faso");
            base.Add("Burma");
            base.Add("Burundi");
            base.Add("Cambodia");
            base.Add("Cameroon");
            base.Add("Canada");
            base.Add("Cape Verde");
            base.Add("Cayman Islands");
            base.Add("Central African Republic");
            base.Add("Chad");
            base.Add("Chile");
            base.Add("China");
            base.Add("Christmas Island");
            base.Add("Clipperton Island");
            base.Add("Cocos Keeling Islands");
            base.Add("Colombia");
            base.Add("Comoros");
            base.Add("Congo");
            base.Add("Cook Islands");
            base.Add("Coral Sea Islands");
            base.Add("Costa Rica");
            base.Add("Cote divoire");
            base.Add("Croatia");
            base.Add("Cuba");
            base.Add("Cyprus");
            base.Add("Czech Republic");
            base.Add("Denmark");
            base.Add("Djibouti");
            base.Add("Dominica");
            base.Add("Dominican Republic");
            base.Add("Ecuador");
            base.Add("Egypt");
            base.Add("El Salvador");
            base.Add("Equatorial Guinea");
            base.Add("Eritrea");
            base.Add("Estonia");
            base.Add("Ethiopia");
            base.Add("Europa Island");
            base.Add("Falkland Islands");
            base.Add("Faroe Islands");
            base.Add("Fiji");
            base.Add("Finland");
            base.Add("France");
            base.Add("French Guiana");
            base.Add("French Polynesia");
            base.Add("Gabon");
            base.Add("Gambia");
            base.Add("Gaza");
            base.Add("Georgia");
            base.Add("Germany");
            base.Add("Ghana");
            base.Add("Gibraltar");
            base.Add("Glorioso Islands");
            base.Add("Greece");
            base.Add("Greenland");
            base.Add("Grenada");
            base.Add("Guadeloupe");
            base.Add("Guam");
            base.Add("Guatemala");
            base.Add("Guernsey");
            base.Add("Guinea");
            base.Add("Guinea Bissau");
            base.Add("Guyana");
            base.Add("Haiti");
            base.Add("Honduras");
            base.Add("Hong Kong");
            base.Add("Howland Island");
            base.Add("Hungary");
            base.Add("Iceland");
            base.Add("India");
            base.Add("Indonesia");
            base.Add("Iran");
            base.Add("Iraq");
            base.Add("Ireland");
            base.Add("Israel");
            base.Add("Italy");
            base.Add("Jamaica");
            base.Add("Jan Mayen");
            base.Add("Japan");
            base.Add("Jarvis Island");
            base.Add("Jersey");
            base.Add("Johnston Atoll");
            base.Add("Jordan");
            base.Add("Juan de Nova Island");
            base.Add("Kazakhstan");
            base.Add("Kenya");
            base.Add("Kingman Reef");
            base.Add("Kiribati");
            base.Add("Kuwait");
            base.Add("Kyrgyzstan");
            base.Add("Laos");
            base.Add("Latvia");
            base.Add("Lebanon");
            base.Add("Lesotho");
            base.Add("Liberia");
            base.Add("Libya");
            base.Add("Liechtenstein");
            base.Add("Lithuania");
            base.Add("Luxembourg");
            base.Add("Macau");
            base.Add("Macedonia");
            base.Add("Madagascar");
            base.Add("Malawi");
            base.Add("Malaysia");
            base.Add("Maldives");
            base.Add("Mali");
            base.Add("Malta");
            base.Add("Marshall Islands");
            base.Add("Martinique");
            base.Add("Mauritania");
            base.Add("Mauritius");
            base.Add("Mayotte");
            base.Add("Mexico");
            base.Add("Micronesia");
            base.Add("Midway Islands");
            base.Add("Moldova");
            base.Add("Monaco");
            base.Add("Mongolia");
            base.Add("Montserrat");
            base.Add("Morocco");
            base.Add("Mozambique");
            base.Add("Namibia");
            base.Add("Nauru");
            base.Add("Navassa Island");
            base.Add("Nepal");
            base.Add("Netherlands");
            base.Add("Netherlands Antilles");
            base.Add("New Caledonia");
            base.Add("New Zealand");
            base.Add("Nicaragua");
            base.Add("Niger");
            base.Add("Nigeria");
            base.Add("Niue");
            base.Add("Norfolk Island");
            base.Add("North Korea");
            base.Add("Northern Mariana Islands");
            base.Add("Norway");
            base.Add("Oman");
            base.Add("Pakistan");
            base.Add("Palau");
            base.Add("Palmyra Atoll");
            base.Add("Panama");
            base.Add("Papua New Guinea");
            base.Add("Paracel Islands");
            base.Add("Paraguay");
            base.Add("Peru");
            base.Add("Philippines");
            base.Add("Pitcairn Islands");
            base.Add("Poland");
            base.Add("Portugal");
            base.Add("Puerto Rico");
            base.Add("Qatar");
            base.Add("Reunion");
            base.Add("Romania");
            base.Add("Russia");
            base.Add("Rwanda");
            base.Add("Saint Helena");
            base.Add("Saint Kitts and Nevis");
            base.Add("Saint Lucia");
            base.Add("Saint Pierre and Miquelon");
            base.Add("Saint Vincent and The Grenadines");
            base.Add("Samoa");
            base.Add("Sanmarino");
            base.Add("Sao Tome and Principe");
            base.Add("Saudi Arabia");
            base.Add("Senegal");
            base.Add("Seychelle");
            base.Add("Sierraleone");
            base.Add("Singapore");
            base.Add("Slovakia");
            base.Add("Slovenia");
            base.Add("Solomon Islands");
            base.Add("Somalia");
            base.Add("South Africa");
            base.Add("South Korea");
            base.Add("Spain");
            base.Add("Spratly Islands");
            base.Add("Sri Lanka");
            base.Add("Sudan");
            base.Add("Suriname");
            base.Add("Svalbard");
            base.Add("Swaziland");
            base.Add("Sweden");
            base.Add("Switzerland");
            base.Add("Syria");
            base.Add("Taiwan");
            base.Add("Tajikistan");
            base.Add("Tanzania");
            base.Add("Thailand");
            base.Add("Togo");
            base.Add("Tokelau");
            base.Add("Tonga");
            base.Add("Trinidad and Tobago");
            base.Add("Tromelin Island");
            base.Add("Tunisia");
            base.Add("Turkey");
            base.Add("Turkmenistan");
            base.Add("Turks and Caicos Islands");
            base.Add("Tuvalu");
            base.Add("Uganda");
            base.Add("Ukraine");
            base.Add("United Arab Emirates");
            base.Add("United Kingdom");
            base.Add("United States");
            base.Add("Uruguay");
            base.Add("Uzbekistan");
            base.Add("Vanuatu");
            base.Add("Vatican");
            base.Add("Venezuela");
            base.Add("Vietnam");
            base.Add("Virgin Islands");
            base.Add("Wake Island");
            base.Add("Wallis and Futuna");
            base.Add("West Bank");
            base.Add("Western Sahara");
            base.Add("Yemen");
            base.Add("Zambia");
            base.Add("Zimbabwe");
        }
    }

    //public class TimezonesList : List<string>
    //{
    //    public TimezonesList()
    //   {
    //        base.Add("(GMT-12:00) International Date Line West");
    //        base.Add("(GMT-11:00) Midway Island, Samoa");
    //        base.Add("(GMT-10:00) Hawaii");
    //        base.Add("(GMT-09:00) Alaska");
    //        base.Add("(GMT-08:00) Pacific Time (US & Canada)");
    //        base.Add("(GMT-08:00) Tijuana, Baja California");
    //        base.Add("(GMT-07:00) Arizona");
    //        base.Add("(GMT-07:00) Chihuahua, La Paz, Mazatlan");
    //        base.Add("(GMT-07:00) Mountain Time (US & Canada)");
    //        base.Add("(GMT-06:00) Central America");
    //        base.Add("(GMT-06:00) Central Time (US & Canada)");
    //        base.Add("(GMT-06:00) Guadalajara, Mexico City, Monterrey");
    //        base.Add("(GMT-06:00) Saskatchewan");
    //        base.Add("(GMT-05:00) Bogota, Lima, Quito, Rio Branco");
    //        base.Add("(GMT-05:00) Eastern Time (US & Canada)");
    //        base.Add("(GMT-05:00) Indiana (East)");
    //        base.Add("(GMT-04:30) Caracas");
    //        base.Add("(GMT-04:00) Atlantic Time (Canada)");
    //        base.Add("(GMT-04:00) La Paz");
    //        base.Add("(GMT-04:00) Manaus");
    //        base.Add("(GMT-04:00) Santiago");
    //        base.Add("(GMT-03:30) Newfoundland");
    //        base.Add("(GMT-03:00) Brasilia");
    //        base.Add("(GMT-03:00) Buenos Aires");
    //        base.Add("(GMT-03:00) Georgetown");
    //        base.Add("(GMT-03:00) Greenland");
    //        base.Add("(GMT-03:00) Montevideo");
    //        base.Add("(GMT-02:00) Mid-Atlantic");
    //        base.Add("(GMT-01:00) Azores");
    //        base.Add("(GMT-01:00) Cape Verde Is.");
    //        base.Add("(GMT) Casablanca");
    //        base.Add("(GMT) Greenwich Mean Time : Dublin, Edinburgh, Lisbon, London");
    //        base.Add("(GMT) Monrovia, Reykjavik");
    //        base.Add("(GMT+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna");
    //        base.Add("(GMT+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague");
    //        base.Add("(GMT+01:00) Brussels, Copenhagen, Madrid, Paris");
    //        base.Add("(GMT+01:00) Sarajevo, Skopje, Warsaw, Zagreb");
    //        base.Add("(GMT+01:00) West Central Africa");
    //        base.Add("(GMT+02:00) Amman");
    //        base.Add("(GMT+02:00) Athens, Bucharest, Istanbul");
    //        base.Add("(GMT+02:00) Beirut");
    //        base.Add("(GMT+02:00) Cairo");
    //        base.Add("(GMT+02:00) Harare, Pretoria");
    //        base.Add("(GMT+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius");
    //        base.Add("(GMT+02:00) Jerusalem");
    //        base.Add("(GMT+02:00) Minsk");
    //        base.Add("(GMT+02:00) Windhoek");
    //        base.Add("(GMT+03:00) Baghdad");
    //        base.Add("(GMT+03:00) Kuwait, Riyadh");
    //        base.Add("(GMT+03:00) Moscow, St. Petersburg, Volgograd");
    //        base.Add("(GMT+03:00) Nairobi");
    //        base.Add("(GMT+03:00) Tbilisi");
    //        base.Add("(GMT+03:30) Tehran");
    //        base.Add("(GMT+04:00) Abu Dhabi, Muscat");
    //        base.Add("(GMT+04:00) Baku");
    //        base.Add("(GMT+04:00) Port Louis");
    //        base.Add("(GMT+04:00) Yerevan");
    //        base.Add("(GMT+04:30) Kabul");
    //        base.Add("(GMT+05:00) Ekaterinburg");
    //        base.Add("(GMT+05:00) Islamabad, Karachi");
    //        base.Add("(GMT+05:00) Tashkent");
    //        base.Add("(GMT+05:30) Chennai, Kolkata, Mumbai, New Delhi");
    //        base.Add("(GMT+05:30) Sri Jayawardenepura");
    //        base.Add("(GMT+05:45) Kathmandu");
    //        base.Add("(GMT+06:00) Almaty, Novosibirsk");
    //        base.Add("(GMT+06:00) Astana, Dhaka");
    //        base.Add("(GMT+06:30) Yangon (Rangoon)");
    //        base.Add("(GMT+07:00) Bangkok, Hanoi, Jakarta");
    //        base.Add("(GMT+07:00) Krasnoyarsk");
    //        base.Add("(GMT+08:00) Beijing, Chongqing, Hong Kong, Urumqi");
    //        base.Add("(GMT+08:00) Irkutsk, Ulaan Bataar");
    //        base.Add("(GMT+08:00) Kuala Lumpur, Singapore");
    //        base.Add("(GMT+08:00) Perth");
    //        base.Add("(GMT+08:00) Taipei");
    //        base.Add("(GMT+09:00) Osaka, Sapporo, Tokyo");
    //        base.Add("(GMT+09:00) Seoul");
    //        base.Add("(GMT+09:00) Yakutsk");
    //        base.Add("(GMT+09:30) Adelaide");
    //        base.Add("(GMT+09:30) Darwin");
    //        base.Add("(GMT+10:00) Brisbane");
    //        base.Add("(GMT+10:00) Canberra, Melbourne, Sydney");
    //        base.Add("(GMT+10:00) Guam, Port Moresby");
    //        base.Add("(GMT+10:00) Hobart");
    //        base.Add("(GMT+10:00) Vladivostok");
    //        base.Add("(GMT+11:00) Magadan, Solomon Is., New Caledonia");
    //        base.Add("(GMT+12:00) Auckland, Wellington");
    //        base.Add("(GMT+12:00) Fiji, Kamchatka, Marshall Is.");
    //        base.Add("(GMT+13:00) Nuku'alofa");
    //    }
    //}

    public class CountryAreaCodes : Dictionary<string, int>
    {
        public CountryAreaCodes()
        {
            base.Add("United States", 1);
            base.Add("Australia", 61);
            base.Add("United Kingdom", 44);
        }
    }
}
